תחילת התהליך היה דומה לתהליך של כל החברות למשרה כזאת.
בהתחלה מספרים על החברה, מה היא עושה, מי הקהל יעד שלה והמערכות אותן היא מפתחת ולאחר מכן המועמד מספר על עצמו.
שאלות מתוך הראיון
אתה צריך לפתח מערכת לניהול תקיות וקבצים.
על המערכת לדעת לשמור מידע עבור התקיות והקבצים.
המערכת אמורה לתמוך באפשרויות של הוספת קובץ לתקיה, הוספת תקיה לתקיה קיימת וכך הלאה עד אינסוף...
לאחר שפיתחת מערכת כזאת עליך להדגימה על יד הוספת תקיות וקבצים והפעלת הפונקציה שתדפיס את כולם בצורת היררכית.
כמו כן, על המערכת לתמוך באפשרות של מחיקת קובץ / תקיה שהוספה.
בנוסף, אסור עליך להשתמש במערכים / רשימות.
תשובות
הוסף תשובה
|
לצפיה בתשובות
אפריל 2015
הפיתרון הוא להשתמש ב Composite Pattern, ניתן ללמוד עליו הרבה באינטרנט, הרעיון הוא כזה:
מחלקה אבסטרקטית שתכיל הגדרות לשיטות המשוטפות גם ל File וגם ל Folder.
מחלקה יורשת בשם File שתכיל גם את השיטות המשותפות (שהגדרנו קודם) וגם את השיטות הייחודיות ל File.
מחלקה בשם Folder שתכיל את כל השיטות המשוטפות + השיטות הייחודיות ל Folder.
לגבי ההגבלה בשימוש במערכים / רשימות:
עליך להגדיר מחלקה משלך שתתפקד כ- מן List ששם נשתמש ברשימה מקושרת. מספיק שהגדרנו פעם אחת מחלקה כזאת עם על התכונות והשיטות של רשימות מקושרות ואז כבר ניתן להשתמש במחלקה זו כאילו היא List אמיתי מבלי לשים לב לאיך היא מממשת זאת (באמצעות רשימה מקושרת כמובן).